パラメタ化照合

パラメタ化照合とはBakerによって定義された文字列の構造に着目した照合を行う手法であり, ソフトウェアのメンテナンス、プログラムの剽窃の発見、RNAの構造照合などに使われる.

固定するアルファベットを \(\Sigma\) ,置き換えを考えるアルファベットを \(\Pi\) とする. また,パラメタ化文字列を \(\Sigma \cup \Pi\) 上の文字列とする. パラメタ化一致するとは,二つのパラメタ化文字列 \(s_1,s_2\) に対して, \(\Pi\) から \(\Pi\) への全単射 が存在することをいう.

例)
\(\Sigma=\{G,A\}\Pi=\{T,C\}\) とし, \(s_1=GACCAT,s_2=GATTAC\) の二つのパラメタ化文字列を考える.
\(s_1=GACCAT\) について \(C \to T,T \to C\) を考えると \(s_1 \to GATTAC=s_2\) となるので
\(s_1,s_2\) はパラメタ化一致している.

パラメタ化照合を効率良く行うための符号化としてprev符号が存在している.